Skip to content

Object.prototype.toString 返回什么

js
const isObject = (context) =>
  Object.prototype.toString.call(context) === "[object Object]";

const isObj = isObject({});
console.log(isObj); // true
js
const isType = (type) => (context) =>
  Object.prototype.toString.call(context) === `[object ${type}]`;

const isArray = isType("Array");
console.log(isArray([])); // true
js
const [isArray, isString, isObject] = ["Array", "String", "Object"].map(
  (name) => (context) =>
    Object.prototype.toString.call(context) === `[object ${name}]`
);
console.log(isString("abc"));

它的缺点是不能校验自定义类型

在 MIT 许可下发布